<#assign imports = []>
<#list columns?filter(c -> c.list) as column>
    <#if !(imports?seq_contains(column.javaType.fullyQualifiedName))>
        <#assign imports += [column.javaType.fullyQualifiedName]>
    </#if>
</#list>
<#-- 计算出需要导入的import -->
<#assign primaryKeyType = columns?filter(column -> column.primary)?first.javaType>
<#--  拿到主键类型 -->
package ${packageName}.service;

import lombok.Data;
import lombok.EqualsAndHashCode;
import vip.liux.application.dots.AuditedEntityDto;
<#list imports as import>
    import ${import};<#--  导入 -->
</#list>

/**
* ${className}实体数据传输对象
* 继承自AuditedEntityDto，包含审计信息
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class ${className}Dto extends AuditedEntityDto<${primaryKeyType}> {

<#list columns?filter(c -> c.primary == false)?filter(c -> c.list) as column>
    /**
    * ${column.columnComment!""}<#-- 用于展示在列表中的字段 -->
    */
    private ${column.javaType} ${column.javaField};

</#list>
}
